namespace Ke.Bee.Shared.Abstractions;

/// <summary>
/// 音频提取器
/// </summary>
public interface IAudioExtractor
{
    /// <summary>
    /// 从一个音视频文件中提取音频
    /// </summary>
    /// <param name="input"></param>
    /// <param name="output"></param>
    /// <param name="sampleRate"></param>
    /// <returns></returns>
    Task<bool> ExtractAudioAsync(string input,
        string output,
        int sampleRate = 16000,
        int channels = 1,
        string audioCodec = "pcm_s16le",
        TimeSpan? startTime = null,
        TimeSpan? duration = null)
        ;
}